OBJECT Report 50000 Empty Report { OBJECT-PROPERTIES { Date=03/12/18; Time=[ 9:08:13 AM]; Modified=Yes; Version List=FORNAV3.1.0.1462/1462; } PROPERTIES { OnInitReport=BEGIN ;ReportForNav:= ReportForNav.Report(CurrReport.OBJECTID,CurrReport.LANGUAGE,SERIALNUMBER,USERID,COMPANYNAME);ReportForNav.Init; END; OnPreReport=BEGIN ;ReportForNav.OpenDesigner:=ReportForNavOpenDesigner;IF NOT ReportForNav.Pre THEN CurrReport.QUIT; END; OnPostReport=BEGIN ;ReportForNav.Post; END; } DATASET { } REQUESTPAGE { PROPERTIES { } CONTROLS { { 1900000001;0;Container; ContainerType=ContentArea } { 1900000002;1;Group ; CaptionML=[CSY=Mo§nosti; DAN=Indstillinger; DEU=Optionen; ENU=Options; FIN=Vaihtoehdot; ISL=Valkostir; NLD=Opties; NOR=Alternativer; SVE=Alternativ; ITS=Opzioni; NLB=Opties] } { 5000;2 ;Field ; Name=ForNavOpenDesigner; CaptionML=ENU=Open Designer; SourceExpr=ReportForNavOpenDesigner; Visible=ReportForNavAllowDesign } } } LABELS { } CODE { VAR ReportForNav@5000 : DotNet "'ForNav.Reports.3.1.0.1462, Version=3.1.0.1462, Culture=neutral, PublicKeyToken=5284c1af2984feb0'.ForNav.Report" WITHEVENTS; ReportForNavClient@5003 : DotNet "'ForNav.Reports.3.1.0.1462, Version=3.1.0.1462, Culture=neutral, PublicKeyToken=5284c1af2984feb0'.ForNav.Report" RUNONCLIENT; ReportForNavDialog@5001 : Dialog; ReportForNavOpenDesigner@5002 : Boolean; ReportForNavAllowDesign@5004 : Boolean INDATASET; EVENT ReportForNav@5000::OnInit@5002(); VAR ReportLayoutSelection@1000 : Record 9651; CustomReportLayout@1001 : Record 9650; CustomLayoutID@1002 : Variant; InStream@1004 : InStream; EmptyLayout@1003 : Text; BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. EmptyLayout := FORMAT(ReportLayoutSelection."Custom Report Layout Code"); CustomLayoutID := ReportLayoutSelection."Custom Report Layout Code"; ReportForNav.OData := GETURL(CLIENTTYPE::OData, COMPANYNAME, OBJECTTYPE::Page, 7702); IF FORMAT(ReportLayoutSelection.GetTempLayoutSelected) <> EmptyLayout THEN CustomLayoutID := ReportLayoutSelection.GetTempLayoutSelected ELSE IF ReportLayoutSelection.HasCustomLayout(ReportForNav.ReportID) = 1 THEN CustomLayoutID := ReportLayoutSelection."Custom Report Layout Code"; IF (FORMAT(CustomLayoutID) <> EmptyLayout) AND CustomReportLayout.GET(CustomLayoutID) THEN BEGIN CustomReportLayout.TESTFIELD(Type,CustomReportLayout.Type::RDLC); CustomReportLayout.CALCFIELDS(Layout); CustomReportLayout.Layout.CREATEINSTREAM(InStream,TEXTENCODING::UTF8); ReportForNav.IsCustomLayout := TRUE; END ELSE REPORT.RDLCLAYOUT(ReportForNav.ReportID,InStream); ReportForNav.LoadRdlc(InStream); IF ReportForNav.IsWindowsClient THEN BEGIN ReportForNav.CheckClientAddIn(); ReportForNavClient := ReportForNavClient.Report(ReportForNav.Definition); ReportForNavAllowDesign := ReportForNavClient.HasDesigner AND NOT ReportForNav.ParameterMode; END; END; EVENT ReportForNav@5000::OnSave@5010(Base64Layout@1000 : Text); VAR CustomReportLayout@1002 : Record 9650; ReportLayoutSelection@1003 : Record 9651; LayoutId@1004 : Variant; TempBlob@1007 : Record 99008535; OutStream@1006 : OutStream; Bstr@1005 : BigText; EmptyLayout@1001 : Text; BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. EmptyLayout := FORMAT(ReportLayoutSelection."Custom Report Layout Code"); LayoutId := ReportLayoutSelection."Custom Report Layout Code"; IF ReportLayoutSelection.HasCustomLayout(ReportForNav.ReportID) = 1 THEN BEGIN IF FORMAT(ReportLayoutSelection.GetTempLayoutSelected) <> EmptyLayout THEN BEGIN LayoutId := ReportLayoutSelection.GetTempLayoutSelected; END ELSE BEGIN IF ReportLayoutSelection.GET(ReportForNav.ReportID, COMPANYNAME) THEN BEGIN LayoutId := ReportLayoutSelection."Custom Report Layout Code"; END; END; END ELSE BEGIN IF CONFIRM('Default custom layout not found. Create one?') THEN; END; IF FORMAT(LayoutId) <> EmptyLayout THEN BEGIN TempBlob.Blob.CREATEOUTSTREAM(OutStream); Bstr.ADDTEXT(Base64Layout); Bstr.WRITE(OutStream); CustomReportLayout.GET(LayoutId); CustomReportLayout.ImportLayoutBlob(TempBlob, 'RDL'); END; END; EVENT ReportForNav@5000::OnParameters@5008(Parameters@1000 : Text); BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. ReportForNav.Parameters := REPORT.RUNREQUESTPAGE(ReportForNav.ReportID, Parameters); END; EVENT ReportForNav@5000::OnPreview@5009(Parameters@1000 : Text;FileName@1005 : Text); VAR PdfFile@1002 : File; InStream@1003 : InStream; OutStream@1004 : OutStream; BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. COMMIT; PdfFile.CREATETEMPFILE; PdfFile.CREATEOUTSTREAM(OutStream); REPORT.SAVEAS(ReportForNav.ReportID, Parameters, REPORTFORMAT::Pdf, OutStream); PdfFile.CREATEINSTREAM(InStream); ReportForNavClient.ShowDesigner; IF ReportForNav.IsValidPdf(PdfFile.NAME) THEN DOWNLOADFROMSTREAM(InStream, '', '', '', FileName); PdfFile.CLOSE; END; EVENT ReportForNav@5000::OnPreSection@5012(DataItemId@1000 : Text;SectionId@1001 : Text); BEGIN END; EVENT ReportForNav@5000::OnPostSection@5013(DataItemId@1000 : Text;SectionId@1001 : Text); BEGIN END; EVENT ReportForNav@5000::OnClientOperation@5014(Args@1000 : DotNet "'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Array"); VAR op@1001 : Text; FileMgmt@1002 : Codeunit 419; Process@1006 : DotNet "'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Diagnostics.Process" RUNONCLIENT; PathObj@1005 : DotNet "'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.Path" RUNONCLIENT; FileVersionInfo@1003 : DotNet "'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.Diagnostics.FileVersionInfo" RUNONCLIENT; DirectoryHelper@1004 : DotNet "'mscorlib'.System.IO.Directory" RUNONCLIENT; BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. op := Args.GetValue(0); CASE op OF 'TempPath': ReportForNav.Result := PathObj.GetTempPath(); 'FileExists': ReportForNav.Result := FileMgmt.ClientFileExists(Args.GetValue(1)); 'DirectoryExists': ReportForNav.Result := FileMgmt.ClientDirectoryExists(Args.GetValue(1)); 'ProcessLocation': ReportForNav.Result := Process.GetCurrentProcess().MainModule.FileName; 'FileVersion': ReportForNav.Result := FileVersionInfo.GetVersionInfo(Args.GetValue(1)).FileVersion; 'DeleteFile': FileMgmt.DeleteClientFile(Args.GetValue(1)); 'DeleteDirectory': IF STRLEN(Args.GetValue(1)) > 20 THEN IF FileMgmt.ClientDirectoryExists(Args.GetValue(1)) THEN DirectoryHelper.Delete(FORMAT(Args.GetValue(1)), TRUE); END; END; EVENT ReportForNav@5000::OnCheckForNavClientVersion@5015(); BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. ReportForNavClient := ReportForNavClient.Report(); IF ReportForNav.MyFileVersion <> ReportForNavClient.MyFileVersion THEN ERROR('You have version %1 of the Reports ForNAV assembly here:\\%2\\Please close your NAV client and update it to version %3.', ReportForNavClient.MyFileVersion, ReportForNavClient.MyFileName, ReportForNav.MyFileVersion); END; EVENT ReportForNav@5000::OnSelectPrinter@5006(); BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. ReportForNav.PrinterSettings.PageSettings := ReportForNavClient.SelectPrinter(ReportForNav.PrinterSettings.PrinterName,ReportForNav.PrinterSettings.ShowPrinterDialog,ReportForNav.PrinterSettings.PageSettings); END; EVENT ReportForNav@5000::OnPrint@5005(InStream@1000 : DotNet "'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.Stream"); VAR ClientFileName@1001 : Text[255]; BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. DOWNLOADFROMSTREAM(InStream, '', '', '', ClientFileName); ReportForNavClient.Print(ClientFileName); END; EVENT ReportForNav@5000::OnDesign@5007(Data@1001 : Text); BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. ReportForNavClient.Data := Data; WHILE ReportForNavClient.DesignReport DO BEGIN ReportForNav.HandleRequest(ReportForNavClient.GetRequest()); SLEEP(100); END; END; EVENT ReportForNav@5000::OnView@5003(ClientFileName@1000 : Text;Parameters@1001 : Text;ServerFileName@1002 : Text); VAR ServerFile@1003 : File; ServerInStream@1004 : InStream; Filter@1005 : Text; BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. ServerFile.OPEN(ServerFileName); ServerFile.CREATEINSTREAM(ServerInStream); IF STRLEN(ClientFileName) >= 4 THEN IF LOWERCASE(COPYSTR(ClientFileName, STRLEN(ClientFileName)-3, 4)) = '.pdf' THEN Filter := 'PDF (*.pdf)|*.pdf'; IF STRLEN(ClientFileName) >= 4 THEN IF LOWERCASE(COPYSTR(ClientFileName, STRLEN(ClientFileName)-3, 4)) = '.doc' THEN Filter := 'Microsoft Word (*.doc)|*.doc'; IF STRLEN(ClientFileName) >= 5 THEN IF LOWERCASE(COPYSTR(ClientFileName, STRLEN(ClientFileName)-4, 5)) = '.xlsx' THEN Filter := 'Microsoft Excel (*.xlsx)|*.xlsx'; DOWNLOADFROMSTREAM(ServerInStream,'Export','',Filter,ClientFileName); END; EVENT ReportForNav@5000::OnMessage@5016(Operation@1000 : Text;Parameter@1001 : Text;ParameterNo@1002 : Integer); BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. CASE Operation OF 'Open' : ReportForNavDialog.OPEN(Parameter); 'Update' : ReportForNavDialog.UPDATE(ParameterNo,Parameter); 'Close' : ReportForNavDialog.CLOSE(); 'Message' : MESSAGE(Parameter); 'Error' : ERROR(Parameter); END; END; EVENT ReportForNav@5000::OnPrintPreview@5011(InStream@1000 : DotNet "'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.System.IO.Stream";Preview@1001 : Boolean); VAR ClientFileName@1002 : Text[255]; BEGIN // This code is created automatically every time Reports ForNAV saves the report. // Do not modify this code. CurrReport.LANGUAGE := SYSTEM.GLOBALLANGUAGE; DOWNLOADFROMSTREAM(InStream, '', '', '', ClientFileName); WHILE ReportForNavClient.PrintPreviewDialog(ClientFileName,ReportForNav.PrinterSettings.PrinterName,Preview) DO BEGIN ReportForNav.HandlePrintPreviewRequest(ReportForNavClient.GetPrintPreviewRequest()); SLEEP(100); END; END; BEGIN END. } RDLDATA { TAMAAH1TbW/aMBD+Pmn/wbI0dZNC4rBQoJBWvLQaaxsqAmVfTXIQr44dOSZq9ut3gdGVD5siWbnzvTzP3ePhzWsuSQWmFFqF1HcZJaASnQq1C+nebls9enP98cPwhzV8AYU2tnzgtd7bGIzgUvwCQ/7+Pr8VCty222mqnbkoiXgOIf1T6U6biFeUTLSyRstlXeDdFKrb18JAWbrvmrqr2Tuz7ZB/hFVNG+fUlYTkhMQhk720ewPoU7DHFOmQp/1GiuQe6qV+gSY67Sa8B702624DCBjin4qykLw+4p5ZyMlMVaCsNjVZQo53Fig5I/RG+auLA3X94BKJzzc/IbGRDullv8/QcSdApmvY4PQqkcDKyJBm1hZXnre+j1vfF63OVZcFPW9aK56LpIxGz77PvPmUW+5NdF5wVX++mCzm0Sr+1GYzZcEobrEzl2g/2NS9+ELJE9/BNxC7zIa03e+yo2ctUpuhw284PnKzE6pEk/Ud0us4pM3Y4TgxWymB6UvknZXz7ehRSClywIY4oEJgYidARrjGkI4aMTikW1iKwiFkOOYqLYl3NGJbS4gzAHuw0dPM1Mc225AGJ30kR0Ecgn1KxtqkYA4W7kCVYBsS6VGkzDl+BwhjnrxMtNQmpOtMWIhzXCwlsTUYi9vJOSKMgJvB4WCDSCsYTDJueIJsBlPYcpQJPcH1zvAOvf88g+vf 0 SQL None 2in 6.5in Invalid END_OF_RDLDATA } }